Haptic realignment cues for touch-input displays

ABSTRACT

A touch-sensitive display of an electronic device is operated in conjunction with a notification system configured to provide haptic, acoustic, and/or visual output to cue a user to align and/or maintain the user&#39;s finger positioning relative to one or more virtual input regions, such as virtual keys of a virtual keyboard, presented on the touch-sensitive display.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a non-provisional patent application of, and claimsthe benefit to, U.S. Provisional Patent Application No. 62/553,041,filed Aug. 31, 2017, and titled “Haptic Realignment Cues For Touch-InputDisplays,” the disclosure of which is hereby incorporated herein byreference in its entirety.

FIELD

Embodiments described herein relate to graphical user interfaces forelectronic devices, and, in particular, to systems and methods forproviding haptic realignment cues to a user interacting with virtualkeys of a graphical user interface presented by a touch-input display ofan electronic device.

BACKGROUND

An electronic device can include a planar touch-sensitive display forpresenting a graphical user interface to interact with a user. Thegraphical user interface can render multiple virtual keys, such asbuttons or keys, that may be selected (e.g., touched) by the user toinput specific information to the electronic device. However, in somecases, a user's finger may unintentionally drift while providing inputto a particular virtual key, resulting in incorrect or undetected inputto the electronic device.

SUMMARY

Embodiments described herein generally reference notification systemsconfigured to generate haptic outputs, sounds, and visual effects thatprovide cues (e.g., alignment cues, realignment cues, centering cues,and so on) to a user to adjust or maintain that user's fingerpositioning when providing touch and/or force input to a particularvirtual key—or other virtual input region—of a virtual keyboard shown ona graphical user interface presented or rendered by a (typically planar)touch-sensitive display of an electronic device.

In particular, in many embodiments, the notification system includes ahaptic output subsystem configured to generate a global, semi-local, orlocal haptic output by varying one or more output characteristics of oneor more global, semi-local, or local haptic output elements (e.g.,vibrating elements, vertical or horizontal displacement elements,acoustic elements, electrostatic elements, and so on). The haptic outputgenerated by the haptic output subsystem can be varied based onsubstantially real-time touch and/or force input to the touch-sensitivedisplay of the electronic device. For example, the haptic outputgenerated by the haptic output subsystem can be varied based on alocation of a touch input, a magnitude of a force input, an accelerationof a gesture input, and so on. In these examples, the haptic outputgenerated by the haptic output subsystem is configured to provide ahaptic cue to the user to either maintain the user's finger positioningor, in the alternative, to adjust the user's finger positioning withrespect to a particular virtual key of the virtual keyboard. In othercases, a touch input can be provided to the input surface by an object,such as a stylus.

In further embodiments, more than one haptic output can be provided bythe haptic output subsystem to cue the user to adjust the user's fingerpositioning relative to a particular virtual key. For example, thenotification system can instruct the haptic output subsystem to generatehaptic outputs with properties (e.g., amplitude, frequency, location,and so on) proportional or otherwise related to a distance between theuser's finger and a central region of the key. For example, if the userpresses a virtual key in the center of that key, a first haptic outputcan be provided. As the user's finger drifts toward a boundary of thevirtual key, eventually overlapping the boundary, a magnitude of thefirst haptic output can be changed, cuing the user to re-center thedrifting finger. Once the user's finger drifts to overlap the boundaryof the virtual key, a second haptic output can be provided, cuing theuser to re-align the drifting finger.

In still further embodiments, the notification system is configured togenerate one or more sounds to provide realignment cues to a user. Forexample, a first sound can be generated if the user presses a virtualkey in the center. As the user's finger drifts toward a boundary of thevirtual key, the first sound can be changed, cuing the user to re-centerthe drifting finger. Once the user's finger drifts to overlap theboundary of the virtual key, a second sound can be provided, cuing theuser to re-align the drifting finger.

In still further embodiments, the notification system can trigger one ormore visual effects to provide realignment cues to the user. Forexample, a first visual effect can be generated if the user presses avirtual key in the center. As the user's finger drifts toward a boundaryof the virtual key, the first visual effect can be changed, cuing theuser to re-center the drifting finger. Once the user's finger drifts tooverlap the boundary of the virtual key, a second visual effect can beprovided, cuing the user to re-align the drifting finger.

In still further embodiments, a notification system can be configured toprovide multiple substantially simultaneous haptic outputs, acousticoutputs, and visual effects to provide realignment cues to the user.

BRIEF DESCRIPTION OF THE FIGURES

Reference will now be made to representative embodiments illustrated inthe accompanying figures. It should be understood that the followingdescriptions are not intended to limit the disclosure to a finite set ofpreferred embodiments. To the contrary, it is intended that thefollowing description covers alternatives, modifications, andequivalents as may be included within the spirit and scope of thedescribed or depicted embodiments and as defined by the appended claims.

FIG. 1 depicts an electronic device that can incorporate a notificationsystem operated in conjunction with a touch-sensitive display.

FIG. 2 depicts the electronic device of FIG. 1, specifically depictingthe touch-sensitive display presenting a graphical user interfaceincluding a virtual keyboard.

FIG. 3A depicts a virtual key that may be touched by a user and,additionally, a simplified graph depicting an example relationshipbetween the output of a notification system, such as described herein,and the location of the user's finger relative to a boundary of thevirtual key.

FIG. 3B depicts a virtual key and, additionally, a simplified graphdepicting an example relationship between the output of a notificationsystem, such as described herein, and the location of the user's fingerrelative to a center point and a boundary of the virtual key.

FIG. 4A depicts a virtual key and, additionally, a simplified graphdepicting another example relationship between the output of anotification system, such as described herein, to the location of theuser's finger relative to a center point and a boundary of the virtualkey.

FIG. 4B depicts a virtual key and, additionally, a simplified graphdepicting another example relationship between the output of anotification system, such as described herein, and the location of theuser's finger relative to a center point and a boundary of the virtualkey.

FIG. 5 depicts a simplified system diagram of a notification system suchas described herein.

FIG. 6A depicts a simplified view of a haptic output subsystem includinga set of haptic elements that may be positioned below an input surfaceof a touch-sensitive display.

FIG. 6B depicts a simplified cross-section, taken through section lineA-A of FIG. 6A, of an example haptic element of the haptic outputsubsystem of FIG. 6A, specifically showing an outward deformation of theinput surface in response to an actuation of the haptic element.

FIG. 6C depicts the haptic element of FIG. 6B, specifically showing aninward deformation of the input surface in response to an actuation ofthe haptic element.

FIG. 6D depicts the haptic element of FIG. 6B, specifically showing anarbitrary deformation of the input surface in response to an actuationof the haptic element.

FIG. 6E depicts a simplified cross-section of another example hapticelement that can be associated with the haptic output subsystem of FIG.6A.

FIG. 6F depicts a simplified cross-section of yet another example hapticelement that can be associated with the haptic output subsystem of FIG.6A.

FIG. 6G depicts a simplified cross-section of yet another example hapticelement that can be associated with the haptic output subsystem of FIG.6A.

FIG. 6H depicts a simplified cross-section of yet another example hapticelement that can be associated with the haptic output subsystem of FIG.6A.

FIG. 7A depicts a virtual keyboard that may be presented by a graphicaluser interface, particularly showing an example visual realignment cue.

FIG. 7B depicts a virtual keyboard showing another example visualrealignment cue.

FIG. 7C depicts a virtual keyboard showing another example visualrealignment cue.

FIG. 7D depicts a virtual keyboard showing another example visualrealignment cue.

FIG. 7E depicts a virtual keyboard showing another example visualrealignment cue.

FIG. 7F depicts a virtual keyboard showing another example visualrealignment cue.

FIG. 8 is a flowchart depicting example operations of a method ofproviding realignment cues to a user of a touch-sensitive display.

FIG. 9 is a flowchart depicting example operations of another method ofproviding realignment cues to a user of a touch-sensitive display.

The use of the same or similar reference numerals in different figuresindicates similar, related, or identical items.

The use of cross-hatching or shading in the accompanying figures isgenerally provided to clarify the boundaries between adjacent elementsand also to facilitate legibility of the figures. Accordingly, neitherthe presence nor the absence of cross-hatching or shading conveys orindicates any preference or requirement for particular materials,material properties, element proportions, element dimensions,commonalities of similarly illustrated elements, or any othercharacteristic, attribute, or property for any element illustrated inthe accompanying figures.

Additionally, it should be understood that the proportions anddimensions (either relative or absolute) of the various features andelements (and collections and groupings thereof) and the boundaries,separations, and positional relationships presented therebetween, areprovided in the accompanying figures merely to facilitate anunderstanding of the various embodiments described herein and,accordingly, may not necessarily be presented or illustrated to scale,and are not intended to indicate any preference or requirement for anillustrated embodiment to the exclusion of embodiments described withreference thereto.

DETAILED DESCRIPTION

Embodiments described herein generally reference systems and methods forproviding finger realignment cues to a user interacting with an exteriorsurface of a touch-sensitive display.

More particularly, embodiments described herein relate to systems andmethods for operating a notification system in conjunction with agraphical user interface shown on a touch-sensitive display of anelectronic device. The notification system is configured to generate oneor more haptic, acoustic, and/or visual outputs that provide cues (e.g.,key press/make outputs, haptic realignment cues, and so on) to a useroperating the keyboard. In many examples, the notification system isconfigured to provide the haptic, acoustic, and/or visual cues to theuser to simulate or emulate a physical key press and, additionally, toencourage a user to adjust or maintain that user's finger positioningwhen providing input. Haptic, acoustic, and/or visual outputs can beprovided separately or together and may vary from embodiment toembodiment.

For example, in one implementation, an electronic device includes atouch-sensitive display that presents a graphical user interfaceincluding a virtual keyboard with virtual keys. The user types on thevirtual keyboard by touching an exterior surface of the touch-sensitivedisplay, generally referred to herein as the “input surface.” As theuser touches the input surface to repeatedly press specific virtualkeys, a processor of the notification system can detect drift of theuser's fingers relative to a central region of one or more of thevirtual keys. It may be appreciated that, as used herein, the phrase“central region” is not intended to convey precise geometricalconstraints or limitations; a central region is understood to be an areaor point generally located over, nearby, or adjacent to a geometriccenter or centroid of a virtual key (or other virtual input region).

Once a drift is detected with respect to a particular virtual key, thenotification system is configured to provide one or more haptic,acoustic, and/or visual outputs to cue the user that the drifting fingershould be realigned (e.g., alignment cues, realignment cues, centeringcues, and so on). For example, a boundary of the virtual key can bevibrated (e.g., at a selected frequency, magnitude, and so on) by ahaptic element in response to a detected drift toward that boundary. Inother cases, the haptic element can be actuated after a user's fingeroverlaps the boundary. In another example, the input surface can belaterally shifted in the same direction as a detected drift. In yetanother example, a haptic output and an acoustic output normallyprovided when a virtual key is pressed in the center can be increased inmagnitude and volume, respectively, in response to a detected drifttoward a boundary of that virtual key.

In further examples, other outputs and/or sets of outputs can beprovided by the notification system to cue a user to adjust the user'sfinger positioning.

These and other embodiments are discussed below with reference to FIGS.1-9. However, those skilled in the art will readily appreciate that thedetailed description given herein with respect to these figures is forexplanatory purposes only and should not be construed as limiting.

FIG. 1 depicts an electronic device 100 including a housing 102 and atouch-sensitive display 104. The touch-sensitive display 104 may beoperated in conjunction with a notification system, such as described indetail below.

The housing 102 of the electronic device 100 can form an outer surfaceand protective case for the internal components of the electronic device100, including the notification system. In the illustrated embodiment,the housing 102 is formed in a substantially rectangular shape, althoughthis is not required. The housing 102 can be formed of one or morecomponents operably connected together, such as a front piece and a backpiece or a top clamshell and a bottom clamshell. Alternatively, thehousing 102 can be formed of a single piece (e.g., uniform body). Thehousing 102 may be planar, or may be partially or entirely curved.

The touch-sensitive display 104 may include one or more touch sensorsand/or force sensors that are configured to detect various combinationsof user touch and force input on an exterior surface (e.g., the “inputsurface”) of the touch-sensitive display 104. More specifically, thetouch and/or force sensors may be used separately or in combination tointerpret a broad range of user inputs such as, but not limited to:touch-based gestures; force-based gestures; touch patterns; tappatterns; single-finger gestures; multi-finger gestures; multi-forcegestures; and so on. The touch sensors and/or force sensors may beconfigured to interpret user input by comparing real-time touch and/orforce input to one or more thresholds that may be static or variable,such as, but not limited to: down-stroke force thresholds; upstrokeforce thresholds; movement thresholds; force magnitude thresholds;location thresholds; and so on. In addition, the touch and/or forcesensors of the touch-sensitive display 104 may be configured to detectrates of change in touch input, force input, gesture input, or anycombination thereof, that is provided by a user to the input surface.

The touch and/or force sensors associated with the touch-sensitivedisplay 104 may be implemented in any number of suitable ways with anysuitable technology or combination of technologies including, but notlimited to: self-capacitance touch sensing; mutual capacitance touchsensing; resistive touch sensing; optical touch sensing; acoustic touchsensing; capacitive force sensing; strain-based force sensing; opticalforce sensing; acoustic force sensing; and so on, or any combinationthereof. The touch and/or force sensors may be independently or mutuallyaddressable and may be distributed and/or segmented and disposedrelative to an active display region and/or a bezel region of thetouch-sensitive display 104.

It may be appreciated that the touch-sensitive display 104 can beimplemented with any suitable technology, including, but not limited to,a multi-touch or multi-force sensing touchscreen that uses liquidcrystal display technology, light-emitting diode technology, organiclight-emitting display technology, organic electroluminescencetechnology, or another type of display technology.

As noted above the electronic device 100 also includes a notificationsystem (described in greater detail with reference to FIGS. 3A-9) thatis operated in conjunction with a graphical user interface presented bythe touch-sensitive display 104. The notification system is configuredto provide one or more haptic, acoustic, or visual cues to a userinteracting with the touch-sensitive display 104.

For example, FIG. 2 depicts an electronic device 200 that includes ahousing 202 and a touch-sensitive display 204 defining an input surface204 a that can receive a touch input from a user. The housing 202 andthe touch-sensitive display 204 can be configured or implemented asdescribed above with respect to FIG. 1, or in any other suitable manner.As with the electronic device 100 depicted in FIG. 1, the electronicdevice 200 includes a notification system, such as described herein.

In the illustrated example, the touch-sensitive display 204 presents agraphical user interface below the input surface 204 a including avirtual keyboard 206. The virtual keyboard 206 includes several rows ofvirtual keys, each of which may be selected by a user by touching orapplying a force to the input surface 204 a (e.g., which may be aportion of the housing 202 or the touch-sensitive display 204 above thetouch-sensitive display 204) above the virtual keyboard 206. In theillustrated embodiment, example touch locations of an example user'sfingers on the input surface 204 a are depicted by dotted ellipses.Fingers of the user's left hand are labeled as the fingers 208 a-208 eand fingers of the user's right hand are labeled as the fingers 210a-210 e.

While typing on the virtual keyboard (e.g., contacting the input surface204 a with one or more fingers), the user's fingers may unintentionallydrift on the input surface 204 a away from center points or centralregions of the virtual keys, resulting in incorrect or undetected inputto the electronic device 200. For example, the user's left-hand thirdfinger 208 c is depicted as drifting to the right of the virtual key212, the user's right-hand index finger 210 a is depicted as drifting tothe left of the virtual key 214, and the user's right-hand thumb 210 eis depicted as drifting downwardly relative to the virtual key 216.

In the illustrated embodiment, the notification system (described indetail with respect to FIGS. 3A-6H) of the electronic device 200 and/orthe touch-sensitive display 204 can be configured to monitor the user'sfinger positioning on the input surface 204 a relative to one or more ofthe virtual keys of the virtual keyboard 206 shown on thetouch-sensitive display 204.

For example, the touch-sensitive display 204 (and/or the notificationsystem) can monitor placement of the user's right-hand index finger 210a on the input surface 204 a relative to a central region of the virtualkey 214 of the virtual keyboard 206. If the distance between sequentialplacements of the user's right-hand index finger 210 a and the centralregion of the virtual key 214 increases beyond a threshold or at aparticular rate, the touch-sensitive display 204 can determine that theuser's right-hand index finger 210 a has drifted on the input surface204 a. In one example, the distance between the user's touch input andthe central region of the virtual key 214 is based on a distance betweenthe centroid of the touch input and the centroid of the virtual key. Inother examples, the distance between the user's touch input and thecentral region of the virtual key is the minimum distance between thecentroid of the virtual key and a perimeter of an area corresponding tothe user's touch input. These are merely examples; it may be appreciatedthat any suitable distance measurement or representation of relativeseparation between a user's touch input and the central region of thevirtual key can be used.

In response to the touch-sensitive display 204 (and/or the notificationsystem) detecting drift, the notification system can generate one ormore haptic outputs through the input surface 204 a to cue the user toadjust the positioning of the user's right-hand index finger 210 a backtoward the central region of the virtual key 214. For example, thenotification system can include a haptic output subsystem configured tolocally vibrate the virtual key 214 to cue the user to adjust thepositioning of the user's right-hand index finger 210 a back toward thecentral region of the virtual key 214. In some examples, the virtual key214 can be vibrated at a frequency between 100 Hz and 200 Hz. In othercases, the virtual key 214 can be vibrated at a higher frequency, suchas an ultrasonic frequency.

In other cases, the notification system can generate one or moreacoustic outputs via a speaker within the electronic device 200 to cuethe user to adjust the position of the user's right-hand index finger210 a back toward the central region of the virtual key 214. Forexample, the notification system can generate different sounds based onthe user's finger position relative to the virtual key 214. For example,the notification system can generate a sharp click sound when the user'sright-hand index finger 210 a presses the virtual key 214 when correctlyaligned with the central region and a dull or hollow sound when theuser's right-hand index finger 210 a presses the virtual key 214 whenincorrectly aligned with the central region of the virtual key 214.

In yet other examples, the notification system can generate one or morevisual effects via the touch-sensitive display 204 to cue the user toadjust the position of the user's right-hand index finger 210 a backtoward the central region of the virtual key 214. For example, thenotification system can generate an after-image corresponding to anincorrect placement of the user's right-hand index finger 210 a.

Further example operations that may be performed by the notificationsystem in response to a detected finger drift, include, but may not belimited to: vibrating a boundary of the virtual key 214; vibrating aboundary of the virtual key 214 at a different frequency or amplitudethan a central region of the virtual key 214; vibrating a region of theinput surface 204 a between adjacent keys; increasing or decreasingfriction between the user's finger and the input surface 204 a;increasing or decreasing friction between the user's finger and aboundary of the virtual key 214; increasing or decreasing frictionbetween the user's finger and a region of the input surface 204 abetween adjacent keys; increasing or decreasing a magnitude of a hapticand/or acoustic click output provided when the user presses the virtualkey 214; changing an appearance of the virtual key 214 (e.g., increasingbrightness, decreasing brightness, changing color, changing shading, andso on); flashing or highlighting a portion of the graphical userinterface presented on the touch-sensitive display 204; increasing ordecreasing a temperature of the input surface 204 a; and so on, or anycombination thereof.

Further, in some embodiments, outputs provided by the notificationsystem can, without limitation: change over time (e.g., become morepronounced if ignored by the user); vary from user to user; vary fromfinger to finger; vary based on a location of a particular virtual keyor virtual input region; vary based on a user setting; vary based on asystem setting; vary based on an application setting; vary based on anorientation or position of the electronic device 200; vary based on atyping history of the user; vary based on detected grammar or spellingerror rates; vary based on ambient light and/or sound detected by asensor of the electronic device 200; vary based on environmentalconditions (e.g., ambient sound levels, ambient light levels, ambienttemperature, ambient humidity, and so on); and so on, or any combinationthereof.

Accordingly, it is appreciated that a notification system—such asdescribed herein—can be suitably configured to cue a user to realignthat user's finger by providing any combination of haptic, acoustic,and/or visual output relative to any virtual key or virtual input regionof a graphical user interface presented by a touch-sensitive display ofan electronic device, such as the electronic device 200.

However, as may be appreciated, certain combinations of outputs providedby a notification system may be more effective to cue a user to realignthat user's fingers than others. For example, in many cases, hapticoutputs can more effectively solicit a user's attention than acoustic orvisual outputs. Further, certain haptic outputs (or combinations ofhaptic outputs) may be more effective to solicit a particular user'sattention than others; haptic effects may vary from device to device,user to user, application to application, implementation toimplementation, virtual input region to virtual input region, and so on.

FIGS. 3A-4B are provided in reference to certain example haptic outputsthat may be provided by a haptic output subsystem of a notificationsystem, such as described herein.

More specifically, a haptic output subsystem of a notification systemsuch as described herein is typically configured to provide hapticoutput to a user, localized to a virtual input region (e.g., a virtualkey) of a graphical user interface shown on a display. As a result ofthis construction, as a user provides a touch input to the input surfaceabove the virtual input region, the user perceives a localized hapticoutput, and associates that haptic output with the virtual input regionitself, cuing the user to position the user's finger generally in thecenter region of the virtual input region.

Accordingly, the phrase “haptic output,” as used herein, broadlyencompasses an output provided one or more components of a haptic outputsubsystem that stimulates a user's sense of touch and/or a user'sperception related to the user's sense of touch including, but notnecessarily limited to, a sense of surface temperature, a sense ofsurface topology, a sense of surface friction, a sense of numbness, asense of mechanical pressure, a sense of mechanical distortion, a senseof motion, a sense of vibration, a sense of stickiness, a sense ofslipperiness, a sense of attraction, and so on or any combinationthereof. Similarly, the phrase “haptic output subsystem” as used hereinbroadly encompasses the components, or groups of components, that may beused by or with a notification system to stimulate a user's sense oftouch and/or affect a user's perception related to the user's sense oftouch.

A haptic output subsystem, such as may be used in conjunction with theembodiments described in reference to FIGS. 3A-6H, includes one or morehaptic elements. A haptic element can be any component or group ofcomponents configured to generate a haptic output that can be felt by auser. For example, a haptic element can be configured to move or vibratethe input surface, affect temperature of the input surface, affectfriction between the user and the input surface, and so on. Hapticelements can include, but are not limited to, acoustic transducers(e.g., voice coil, piezoelectric elements or piezoelectric materials,and so on), thermal elements (e.g., resistive heaters, Peltier elements,and so on), and electrostatic plates. In other cases, other hapticelements or haptic element types may be associated with a haptic outputsubsystem, such as described herein.

Example output characteristics of a haptic element that can becontrolled by the haptic output subsystem can include, but may not belimited to: a frequency, amplitude, duty cycle, envelope, and/or phaseof a haptic element configured to move or vibrate an input surface; anabsolute temperature, temperature gradient, and/or relative temperatureof a haptic element configured to affect temperature of an inputsurface; an electrostatic field magnitude, frequency, duty cycle, and soon of a haptic element configured to affect friction between the userand an input surface by electrostatic attraction; a frequency,amplitude, duty cycle, envelope, and/or phase of a haptic elementconfigured to ultrasonically move or vibrate an input surface to affectfriction between the user and the input surface; and so on. In stillfurther embodiments, other output characteristics may be controlled orinfluenced by a haptic output subsystem such as described herein.

In many embodiments, including those referenced below with respect toFIGS. 3A-4B, a haptic output subsystem can simultaneously actuatedifferent haptic elements with different output characteristics suchthat an aggregate output of the haptic output subsystem is a uniquehaptic effect that is perceivably different from the individual hapticoutputs of the actuated haptic elements. In such examples, a singlehaptic element can be associated with a single virtual input region or,in other embodiments, multiple haptic elements can be associated with(e.g., positioned below or relative to) a single virtual input region.

For example, multiple vibrating haptic elements (see, e.g., FIGS. 6A-6H)can be actuated simultaneously with different output characteristics(e.g., frequencies, phases, amplitudes, and so on) to produce vibrationsthat constructively and/or destructively interfere while propagatingthrough the input surface. Such examples are discussed below withreference to FIGS. 3A-4B.

In one implementation, haptic output from one haptic element can beconfigured to produce vibrations that cancel vibrations produced byanother haptic element in order to define a non-vibrating region of theinput surface. In this implementation, the haptic effect generated bythe haptic output subsystem can be characterized by the location(s) andboundary(s) of vibrating and non-vibrating regions of the input surfacethat result, in aggregate, from the haptic outputs of theindividually-actuated haptic elements. Such examples are discussed belowwith reference to FIGS. 5-6H.

In another implementation, a set of vibrating haptic elements—positionedbelow or relative to a single virtual input region or positioned belowor relative to multiple virtual input regions—can each be actuated withspecific output characteristics (e.g., frequencies, phases, amplitudes,and so on) that produce vibrations corresponding to frequency componentsof a finite series that represents (or approximates) the shape of anarbitrary function (e.g., impulse function, square wave, triangle wave,saw tooth wave, or any other suitable periodic function). The variousvibrations produced by the haptic elements constructively and/ordestructively interfere while propagating through the input surface,causing the input surface to locally deform or displace to take thegeneral shape of the periodic function. In this implementation, thehaptic effect generated by the haptic output subsystem can becharacterized by the location(s), boundary(s), and contour(s) of thedeformations or displacements of the input surface that result, inaggregate, from the vibrations produced by the haptic outputs of theactuated haptic elements.

In one specific example, an impulse function can be approximated by asum of sinusoidal waveforms (see, e.g., FIG. 3A). In this example, agroup of haptic elements of a haptic output subsystem associated with aninput surface can be actuated with specific output characteristics(e.g., specific frequencies, phases, and amplitudes) each correspondingto at least one of a particular selected sinusoidal waveform. In thismanner, the vibrations in the input surface produced by each actuatedhaptic element correspond to at least one respective frequency componentof a finite series that approximates the shape of an impulse function.In other words, the vibrations cause the input surface to deform and/ordisplace to take the shape of an impulse function. In this example, thecontours of the impulse function waveform (e.g., edges, peaks, and soon) may be felt by a user touching the input surface while the hapticelements are actuated by the haptic output subsystem. In thisimplementation, the haptic effect generated by the haptic outputsubsystem can be characterized by the location(s), boundary(s), andcontour(s) of the sharp and/or defined edges characterized by theimpulse waveform-shaped deformation of the input surface.

In further implementations, additional haptic elements can be actuatedto refine or supplement particular haptic effect(s) generated by thehaptic output subsystem. For example, an electrostatic plate cangenerate an electric field that attracts the user's finger to aparticular region of the input surface. An adjacent electrostatic platemay generate an electric field of opposite polarity. In this example,when the user draws a finger from the first electrostatic plate to thesecond electrostatic plate, a change in friction may be perceived by theuser due to the inversion of the electric field magnitude. In thisimplementation, the haptic effect generated by the haptic outputsubsystem can be characterized by the location(s), boundary(s), andmagnitude(s) of the electrostatic fields generated by the haptic outputsubsystem of the input surface.

In yet another example, a haptic output subsystem such as describedherein (e.g., in reference to FIGS. 3A-6H) can supplement a hapticeffect generated by vibrating haptic elements with a haptic effectgenerated by one or more electrostatic plates. For example, a hapticeffect of an impulse function, perceived by a user as a bump extendingfrom an input surface, can be supplemented by a haptic effect of achange in friction across the bump extending from the input surface.

In another example, a thermal element (e.g., a Peltier element, heatpump, resistive heater, inductive heater, and so on) can increase ordecrease a temperature of a particular region of the input surface. Forexample, the thermal element can locally increase a temperature of aregion of the input surface. An adjacent thermal element can locallydecrease the temperature of a second region of the input surface. Inthis example, when the user draws a finger from the first region to thesecond region, a change in temperature may be perceived by the user. Inthis implementation, the haptic effect generated by the haptic outputsubsystem can be characterized by the location(s), boundary(s), andmagnitude(s) of the various temperature gradients generated by thehaptic output subsystem.

In still further embodiments, a haptic output subsystem can be operatedand/or configured to produce a series or set haptic effects that arecollectively configured to simulate the presence of a physical component(e.g., button, switch, key, rocker, slider, dial, and so on) on theinput surface. In many cases, the simulated physical componentcorresponds to a virtual input region below the input surface. Inparticular, the haptic output subsystem in these examples associates aset of particular haptic effects with a set of particular combinationsof user touch and/or force input. In these examples, each haptic effectgenerated by the haptic output subsystem simulates a particular responseor characteristic exhibited by the simulated physical component when theuser interacts with that component in a specific way. In this manner, bysimulating multiple responses or characteristics of the physicalcomponent in response to particular user input, the haptic outputsubsystem can cause the user to perceive that the physical component ispresent on the input surface.

Accordingly, generally and broadly, it is understood that a hapticoutput subsystem such as described herein is configured to producehaptic effects that simulate and/or approximate the various static ordynamic mechanical, physical, or textural attributes or properties thatmay be exhibited by a physical component when a user interacts with thatcomponent by touching, feeling, rotating, tapping, pushing, pulling,pressing, releasing, or otherwise physically interacting with thecomponent in a specific or particular manner. These haptic effects cue auser to align the user's finger with a central region of an associatedvirtual input region, such as a virtual key of a virtual keyboard.

For example, when a user places a finger on a physical key of akeyboard, the user can interact with the key in a number of ways (e.g.,by touching, pressing, feeling, tapping, and so on), each of which maybe associated with a different set of haptic effects or outputs thatinform the user's perception of properties of the key including size,location, shape, height, texture, material, rigidity, flexibility, andso on. Such interactions might include drawing a finger across a surfaceor edge of the key by touching or feeling, pressing the key withdifferent magnitudes of force, holding the key in a specific position,sliding a finger across a surface of the key, wiggling the key, and soon. Each of these different interactions can be associated withdifferent haptic effects or outputs that inform the user's perception ofthat particular key in a unique way. These haptic outputs can include,but may not be limited to, a sharpness or roundness of an edge of thekey, a texture of a surface of the key, a concavity or convexity of thekey, a rattle or wobble of the key, a presence or absence of surfacefeatures, a stiffness or elasticity of the key, a smoothness ordiscontinuousness of travel when the key is pressed, a magnitude offorce required to actuate the key, and so on.

For simplicity of description and illustration, FIGS. 3A-4B are providedherein to illustrate specific simplified example outputs of a hapticoutput subsystem such as described herein. However, it is appreciatedthat these examples—in addition to the examples referenced above—are notexhaustive; additional haptic effects that can be provided in responseto additional user input may be provided in further embodiments tosimulate different physical input components, non-input objects orfeatures (e.g., surface characteristics, textures, and so on), or forany other suitable purpose.

In particular, the embodiments shown in FIGS. 3A-4B each depict avirtual key that may be touched by a user. The virtual key, as withother embodiments described herein, can be presented by a graphical userinterface shown on a touch-sensitive display that is operated inconjunction with a notification system, such as described herein. Thenotification system includes a haptic output subsystem configured togenerate localized haptic effects—such as those described above—throughan input surface above the touch-sensitive display that may be touchedby a user.

In particular, FIG. 3A depicts a virtual key 300. The haptic outputsubsystem in this example (not shown) is configured to produce a hapticoutput, such as a vibration or an impulse, in response to detecting thata user's finger has drifted away from a central point x₀ of the virtualkey 300. In particular, a graph 302 is provided showing that when theuser's finger drifts along the input surface 304 above the virtual key300 (e.g., from the central point x₀, across the boundary 306 thatdefines a perimeter of the virtual key 300) into an adjacent region 308(e.g., point x₁), a haptic effect 310 is generated by the haptic outputsubsystem to cue the user to readjust the user's finger positioning. Thehaptic effect 310 is illustrated as an impulse (e.g., a sharp, orhigh-frequency vibration) localized to the adjacent region 308, but thismay not be required.

In another non-limiting phrasing, the haptic output subsystem isconfigured to generate a localized haptic effect, adjacent to thevirtual key, when the user's finger drifts in that direction. In thismanner, the haptic output subsystem provides a cue to the user toreadjust the user's finger positioning back toward the central point x₀.

It may be appreciated that the haptic effect 310 can be any suitablehaptic output or combination of haptic outputs including, but notlimited to: a high-frequency vibration; a low-frequency vibration; ahigh-friction effect; a low-friction effect; a high-temperature effect;a low-temperature effect; a click effect; a lateral shift or mechanicaldisplacement of the input surface (in any planar direction generallyparallel to the input surface); a vertical mechanical displacement ofthe input surface (in any direction generally perpendicular to the inputsurface); and so on. As with other embodiments described herein, themagnitude (and/or other characteristics) of the haptic effect 310 can bebased on the real-time touch or force input, user history, devicesettings, and so on.

In other embodiments and implementations, a haptic output subsystem canbe configured to provide different haptic outputs. For example, FIG. 3Bdepicts a virtual key 300. The haptic output subsystem in this example(also not shown) is configured to produce two different haptic outputs.One of the haptic outputs is localized to the surface of the virtual key300, and a second haptic output is localized to a region adjacent to thevirtual key 300.

More particularly, as with FIG. 3A, the graph 302 shown in FIG. 3B showsthat when the user's finger drifts along the input surface 304 above thevirtual key 300 from the central point x₀ toward the boundary 306, ahaptic effect 312 is provided. The haptic effect 312 in this example hasa magnitude that changes continuously as a function of the distancebetween the user's finger and the central point x₀. More particularly,the closer the user's finger is to the boundary 306 of the virtual key300, the lower the magnitude of the haptic effect 312. Once the usercrosses the boundary, the haptic effect 310 can be provided as describedin reference to FIG. 3A.

In another non-limiting phrasing, the haptic output subsystem in thisexample is configured to generate a localized haptic effect when theuser presses the virtual key correctly, diminishing that effect as theuser's finger drifts toward an edge of the virtual key. Once the user'sfinger has crossed the perimeter or boundary of the virtual key so as toat least partially overlap the perimeter or boundary, a different hapticoutput is provided.

The haptic effect 312 is depicted as a continuous function of distancefrom the central point x₀, but this is not required. For example, FIG.4A depicts a virtual key 400. The haptic output subsystem in thisexample (also not shown) is configured to produce two different hapticoutputs. One of the haptic outputs is localized to the surface of thevirtual key 400, and a second haptic output is localized to a regionadjacent to the virtual key 400.

More particularly, as with FIGS. 3A-3B, the graph 402 shown in FIG. 4Ashows that when the user's finger drifts along the input surface 404above the virtual key 400, from the central point x₀ toward the boundary406 (and, eventually into a region adjacent to the virtual key 400,identified as the adjacent region 408), a haptic effect 410 is provided.The haptic effect 412 in this example has a magnitude that changesdiscretely as a function of the distance between the user's finger andthe central point x₀. In another phrasing, the magnitude (or anotheroutput characteristic, such as frequency) of the haptic effect 410differs based on a subarea of the input surface 404 selected by theuser. Once the user crosses the boundary, the haptic effect 410 can beprovided as described in reference to FIGS. 3A-3B.

In still other examples, a haptic effect provided by a haptic outputsubsystem need not decrease as a function of a user's touch locationaway from a central point or central region of a virtual key. Forexample, FIG. 4B shows an alternate implementation of the embodimentdepicted and described in reference to FIG. 4A. In this example, ahaptic effect 414 increases in magnitude (discretely, althoughcontinuous embodiments are possible as well) as the user's finger driftsaway from the central region of the virtual key 400.

The foregoing description of the embodiments depicted in FIGS. 3A-4B,and various alternatives thereof and variations thereto are presented,generally, for purposes of explanation, and to facilitate a thoroughunderstanding of the detailed embodiments presented herein. However, itwill be apparent to one skilled in the art that some of the specificdetails presented herein may not be required in order to practice aparticular described embodiment, or an equivalent thereof.

Thus, it is understood that the foregoing and following descriptions ofspecific embodiments of a haptic output subsystem of a notificationsystem are presented for the limited purposes of illustration anddescription. These descriptions are not targeted to be exhaustive or tolimit the disclosure to the precise forms recited herein. To thecontrary, it will be apparent to one of ordinary skill in the art thatmany modifications and variations are possible in view of the aboveteachings.

For example, it may be appreciated that a haptic output subsystem, suchas described above, may be implemented in a number of suitable ways. Inaddition, a haptic element of a haptic output subsystem can beimplemented in a number of suitable ways. FIGS. 5-6H are provided toillustrate example configurations of a haptic output subsystem and ahaptic element that may be used with a haptic output subsystem.

FIG. 5 depicts a system diagram of an example haptic output subsystem500. The haptic output subsystem 500 includes a controller 502 (such asa processor) that is coupled to a haptic actuator 504 (or hapticelement), such as an electrostatic plate, a vibrating haptic element, ora thermal element. The controller 502 is also coupled to an input sensor506 configured to detect a magnitude, location, and/or direction offorce input and touch input to an input surface (e.g., detected by oneor more of a force sensor or a touch sensor disposed relative to theinput surface). In some embodiments, the controller 502 is also incommunication with other systems or subsystems of a notification system,such as an acoustic controller or a graphic controller 508.

The controller 502 can be implemented with any electronic device capableof processing, receiving, or transmitting data or instructions. Forexample, the controller 502 can be a microprocessor, a centralprocessing unit, an application-specific integrated circuit, afield-programmable gate array, a digital signal processor, an analogcircuit, a digital circuit, or combination of such devices. Theprocessor may be a single-thread or multi-thread processor. Theprocessor may be a single-core or multi-core processor. Accordingly, asdescribed herein, the phrase “processing unit” or, more generally,“processor” refers to a hardware-implemented data processing device orcircuit physically structured to execute specific transformations ofdata including data operations represented as code and/or instructionsincluded in a program that can be stored within and accessed from amemory. The term is meant to encompass a single processor or processingunit, multiple processors, multiple processing units, analog or digitalcircuits, or other suitably configured computing elements or combinationof elements.

The controller 502, in many embodiments, can include or can becommunicably coupled to circuitry and/or logic components, such as adedicated processor and a memory. The circuitry of the controller 502can perform, coordinate, and/or monitor one or more of the functions oroperations associated with the haptic output subsystem 500 including,but not limited to: increasing the temperature of an area of an inputsurface; decreasing the temperature of an area of an input surface;decreasing the temperature surrounding an area of an input surface;increasing the temperature surrounding an area of an input surface;detecting, approximating, and/or measuring the temperature of an area ofan input surface; increasing the friction exhibited by an area of aninput surface; decreasing the friction exhibited by an area of the inputsurface; increasing the friction exhibited surrounding an area of aninput surface; decreasing the friction exhibited surrounding an area ofan input surface; increasing a vibration emanating from a local area ofan input surface; decreasing a vibration output from one or more hapticactuators; generating a vibration that constructively interferes with avibration propagating through an area of an input surface; generating avibration that destructively interferes with a vibration propagatingthrough an area of an input surface; measuring, estimating and/ordetermining a frequency, amplitude and/or phase of a vibrationpropagating through an area of an input surface; and so on or anycombination thereof. In some examples, the controller 502 may use timemultiplexing techniques to obtain measurements from and to apply signalsto each independent element of each portion of a haptic output subsystem500.

In further embodiments, the haptic output subsystem 500 can be operatedand/or configured to produce a series or set of haptic effects (togetherwith, or independent of acoustic or visual effects generated orcontrolled by the acoustic controller or graphic controller 508) thatare collectively configured to simulate the presence of a physicalcomponent, a physical boundary, a physical texture, and so on at one ormore locations or regions of the input surface.

In particular, as noted above, the haptic output subsystem can simulateany arbitrary physical component by associating a set of particularhaptic effects with a set of particular combinations of user touchand/or force input. In these examples, each haptic effect generated bythe haptic output subsystem simulates a particular response orcharacteristic exhibited by the physical component when the userinteracts with that component in a specific way. In this manner, bysimulating multiple responses or characteristics of the physicalcomponent in response to particular user input, the haptic outputsubsystem can provide finger realignment cues to a user.

For example, FIG. 6A depicts a simplified view of haptic outputsubsystem 600, including a number of individually-addressable individualhaptic elements, that can be associated with an input surface 602. Asnoted above, the haptic output subsystem can be appropriately configuredto simulate a physical component, boundary, texture, or object bygenerating haptic effects with one or more haptic elements coupled tothe input surface 602. In the illustrated embodiment, a set of hapticelements are illustrated in phantom to indicate that the haptic elementsare positioned below the input surface. One of the haptic elements isidentified as the individually-addressable haptic element 602 a.

The individually-addressable haptic element 602 a can be implemented ina number of ways. For example, the individually-addressable hapticelement 602 a can include one or more, without limitation: lateraldisplacement elements; vertical displacement elements; low-frequencyvibration elements; high-frequency vibration elements; ultrasonicvibration elements; electrostatic elements; thermal elements; and so on.For simplicity of description and illustration, the embodiments thatfollow reference implementations of the individually-addressable hapticelement 602 a that are configured to displace or vibrate the inputsurface 602. However, it may be appreciated that other exampleembodiments can include other haptic elements, such as those referencedabove.

More specifically, FIGS. 6B-6H depict various example embodiments of theindividually-addressable haptic element 602 a, viewed through thesection line A-A of FIG. 6A.

In some embodiments, such as shown in FIGS. 6B-6E, theindividually-addressable haptic element 602 a includes a haptic element604 that is coupled directly or indirectly to an interior surface of theinput surface 602. The haptic element 604 is configured to compress(FIG. 6B) and/or expand (FIG. 6C) in response to an actuation. For theembodiments depicted in FIGS. 6B-6D, the haptic element 604 compressesor expands along an axis generally parallel to the input surface 602. Inthis manner, the haptic element 604 induces a localized bending momentinto the input surface 602 when actuated. The bending moment causes theinput surface 602 to deform vertically, in a positive direction (see,e.g., FIG. 6B) or negative direction (see, e.g., FIG. 6B) relative tothe input surface 602. In other cases, the bending moment causes theinput surface 602 to vibrate, such as shown in FIG. 6D. In other cases,such as shown in FIG. 6E, the haptic element 604 is compresses orexpands along an axis generally perpendicular to the input surface 602.

The haptic element 604 can be a piezoelectric element, an acoustictransducer, an electrically deformable material (e.g., nitinol), anelectromagnet and attractor plate (see, e.g., FIG. 6G), or any othersuitable element. In other cases, the haptic element 604 may be aneccentrically weighted motor, linear actuator, or any other suitablemechanical element.

In some embodiments, the input surface 602 can be supported by one ormore stiffeners or backing plates. The stiffeners/backing plates canlocally increase a rigidity of the input surface 602 such that an outputgenerated by the haptic element 604 is localized to a greater extent. InFIGS. 6B-6H, a stiffener 606 (depicted in cross section, with left-handand right-hand portions of the stiffener 606 identified as the stiffenersections 606 a, 660 b respectively) is coupled to the input surface 602.The stiffener 606 in one example can be a ring that circumscribes thehaptic element 604. In another example, the stiffener 606 includes twoportions, a first portion 606 a and a second portion 606 b. The firstand second portions of the stiffener can be coupled together or may bediscrete, independent parts.

As with other embodiments described herein, the haptic output subsystem600 (as depicted in FIG. 6B) also includes a controller 608. Thecontroller 608 can be a processor and/or electrical circuitappropriately configured to apply a signal to the haptic element 604 tocause the haptic element 604 to generate haptic output. The controller608 can be configured to vary one or more characteristics of the signal(e.g., voltage, current, frequency, amplitude, phase, envelope, dutycycle, and so on) in order to vary the haptic output characteristics ofthe haptic element 604.

In many cases, the controller 608 is in communication with one or morecomponents of the input surface, such as a force/touch input sensor 610.The controller 608 can receive data or information from these componentsand may alter characteristics of signals provided by the controller 608to the haptic element 604 based on the received data or information. Forexample, the controller 608 can vary characteristics of signals providedby the controller 608 to the haptic element 604 based on a magnitude offorce detected by the force/touch input sensor 610.

Other embodiments are configured in other ways. For example, as shown inFIG. 6F, more than one haptic element can be stacked or layeredtogether. In particular, the haptic element 604 is backed by adifferently-sized haptic element, labeled as the haptic element 612. Inturn, the haptic element 612 is backed by a differently-sized hapticelement, labeled as the haptic element 614. In this embodiment, thehaptic output subsystem 600 can be configured to generate haptic outputfrom one or all of the haptic elements 604, 612, and 614.

In still further examples, a haptic element can include multiple partsthat attract or repel one another to generate a bending moment in theinput surface 602. More particularly, FIG. 6G includes a haptic elementimplemented with an electromagnet 616 and an attractor plate 618, eachcoupled to the input surface and separated from one another by adistance. The attractor plate 618 can be a ferromagnetic material or, inother embodiments, can be a permanent magnet that can be attractedand/or repelled from by the electromagnet 616. In these embodiments,actuation of the electromagnet 616 causes a magnetic field to attract orrepel the attractor plate 618, thereby inducing a bending moment in theinput surface 602. In this example, the electromagnet 616 and theattractor plate 618 attract or repel along an axis generally parallel tothe input surface 602, but this may not be required. For example, asshown in FIG. 6H, the attractor plate 618 and the electromagnet 616 maybe configured to attract or repel along an axis generally perpendicularto the input surface 602.

The foregoing description of the embodiments depicted in FIGS. 5-6H, andvarious alternatives thereof and variations thereto are presented,generally, for purposes of explanation, and to facilitate a thoroughunderstanding of the detailed embodiments presented herein. However, itwill be apparent to one skilled in the art that some of the specificdetails presented herein may not be required in order to practice aparticular described embodiment, or an equivalent thereof.

Thus, it is understood that the foregoing and following descriptions ofspecific embodiments of a haptic element of a haptic output subsystem ofa notification system, such as described herein, are presented for thelimited purposes of illustration and description. These descriptions arenot targeted to be exhaustive or to limit the disclosure to the preciseforms recited herein. To the contrary, it will be apparent to one ofordinary skill in the art that many modifications and variations arepossible in view of the above teachings.

For example, as noted above, a notification system such as describedherein can also provide one or more visual realignment cues to a user toencourage realignment of one or more of the user's fingers relative to avirtual input region. FIGS. 7A-7F depict example visual realignment cuesthat can be provided to a user in place of, or in conjunction with oneor more of the haptic realignment cues described in reference to otherembodiments described herein.

For example, FIG. 7A depicts a virtual keyboard 700 a (that may bepresented by a graphical user interface) including multiple rows ofvirtual keys. In this example, a visual realignment cue 702 is providedby modifying a position of a virtual key that can be selected by a user.FIG. 7B depicts a virtual keyboard 700 b which provides a visualrealignment cue 704 in which a virtual key's size and positioning aremodified. FIG. 7C depicts a virtual keyboard 700 c which provides avisual realignment cue 706 in which a virtual key's shape andpositioning are modified. FIG. 7D depicts a virtual keyboard 700 d whichprovides a visual realignment animation 708 in which a virtual key'sposition is highlighted by a perimeter animation. FIG. 7E depicts avirtual keyboard 700 e which provides a visual realignment cue 710 inwhich a virtual key's coloring or patterning are modified. FIG. 7Fdepicts a virtual keyboard 700 f which provides visual realignment cues712, 714, and 716 in which a user's past finger positions arehighlighted with fading after-images. The example embodiments depictedin FIGS. 7A-7F are merely examples; it is appreciated that any number ofvisual effects can be provided in conjunction with or in place of audiocues and/or haptic cues described herein. Further, it is appreciatedthat any number of suitable visual cues apart from these specificexamples provided above are possible including, but not limited to:virtual key animations; virtual key shape, size, color, design, font,position, or rotation changes; after image animations; and so on.

FIGS. 8-9 are simplified flow chart diagrams corresponding to exampleoperations of methods of providing realignment cues with a notificationsystem, such as described herein.

FIG. 8 depicts operations of a method of providing haptic feedback tocue a user to readjust the user's finger positioning relative to avirtual input region of a graphical user interface. In particular, themethod 800 includes operation 802 in which a touch location is providedby a user. At operation 804, one or more haptic output characteristicsassociated with the touch location can be obtained (e.g., determined,accessed from a memory, and so on). As noted with respect to otherembodiments described herein, the haptic output characteristics can bebased on a distance between the touch location and a central location ofone or more virtual input regions of the graphical user interface. Oncethe haptic output characteristics are determined at operation 804, oneor more haptic outputs can be provided at operation 806. These hapticoutputs can be global haptic outputs, local haptic outputs, semi-localhaptic outputs, or any other suitable haptic output.

FIG. 9 depicts operations of another method of providing haptic feedbackto cue a user to readjust the user's finger positioning relative to avirtual input region of a graphical user interface. In particular, themethod 900 includes operation 902 in which a distance between a touchlocation provided by a user and a central region of a virtual inputregion is determined. At operation 904, one or more outputcharacteristics associated with the touch location can be obtained(e.g., determined, accessed from a memory, and so on). In thisembodiment, the output characteristics correspond to a haptic output orhaptic effect that provide a centering cue to the user to re-center theuser's finger relative to the central region of the virtual inputregion. Once the haptic output characteristics are determined atoperation 904, one or more haptic, acoustic, and/or visual outputs canbe provided at operation 906.

The present disclosure recognizes that personal information data,including private inter-person communications, in the presenttechnology, can be used to the benefit of users. For example, the use ofhaptic simulation on a surface of an electronic device can be used toprovide for a more immersive computing experience.

The present disclosure further contemplates that the entitiesresponsible for the collection, analysis, disclosure, transfer, storage,or other use of such personal information or communication data willcomply with well-established privacy policies and/or privacy practices.In particular, such entities should implement and consistently useprivacy policies and practices that are generally recognized as meetingor exceeding industry or governmental requirements for maintainingpersonal information data private and secure, including the use of dataencryption and security methods that meets or exceeds industry orgovernment standards. For example, personal information from usersshould be collected for legitimate and reasonable uses of the entity andnot shared or sold outside of those legitimate uses. Further, suchcollection should occur only after receiving the informed consent of theusers. Additionally, such entities would take any needed steps forsafeguarding and securing access to such personal information data andensuring that others with access to the personal information data adhereto their privacy policies and procedures. Further, such entities cansubject themselves to evaluation by third parties to certify theiradherence to widely accepted privacy policies and practices.

Despite the foregoing, the present disclosure also contemplatesembodiments in which users selectively block the use of, or access to,personal information data, including private inter-personcommunications. That is, the present disclosure contemplates thathardware and/or software elements can be provided to prevent or blockaccess to such personal information data.

In addition, one may appreciate that although many embodiments aredisclosed above, that the operations and steps presented with respect tomethods and techniques described herein are meant as exemplary andaccordingly are not exhaustive. One may further appreciate thatalternate step order or, fewer or additional steps may be required ordesired for particular embodiments.

Although the disclosure above is described in terms of various exemplaryembodiments and implementations, it should be understood that thevarious features, aspects and functionality described in one or more ofthe individual embodiments are not limited in their applicability to theparticular embodiment with which they are described, but instead can beapplied, alone or in various combinations, to one or more of the someembodiments of the invention, whether or not such embodiments aredescribed and whether or not such features are presented as being a partof a described embodiment. Thus, the breadth and scope of the presentinvention should not be limited by any of the above-described exemplaryembodiments but is instead defined by the claims herein presented.

What is claimed is:
 1. An electronic device comprising: atouch-sensitive display defining an input surface configured to receivea touch input to a virtual key presented by the touch-sensitive display;a haptic element coupled to the input surface; and a controller incommunication with the haptic element and the touch-sensitive displayand configured to: detect a sequence of touch inputs occurring within aregion of the virtual key, the sequence of touch inputs including acurrent touch and multiple previous touches, each of the multipleprevious touches associated with an actuation of the virtual key causedby placement of a user's body part within the region of the virtual key;determine a relative positional drift of the current touch relative tothe multiple previous touches using the sequence of touch inputs; and inresponse to the relative positional drift exceeding a threshold, actuatethe haptic element to produce a haptic output.
 2. The electronic deviceof claim 1, wherein the haptic element comprises a piezoelectricmaterial coupled to the touch-sensitive display.
 3. The electronicdevice of claim 2, wherein the piezoelectric material is configured toinduce a bending moment into the input surface such that, when actuated,the haptic element generates a localized haptic output through the inputsurface below the virtual key.
 4. The electronic device of claim 1,wherein the haptic element is configured to vibrate the input surface ata frequency between 100 Hz and 200 Hz to produce the haptic output. 5.The electronic device of claim 1, wherein the haptic element isconfigured to vibrate the input surface at an ultrasonic frequency toproduce the haptic output.
 6. The electronic device of claim 1, whereinthe haptic element is configured to laterally shift the input surface toproduce the haptic output.
 7. The electronic device of claim 1, whereina frequency or an amplitude of the haptic output is based, at least inpart, on a determined distance between one of the sequence of touchinputs and a central region of the virtual key.
 8. The electronic deviceof claim 1, wherein the haptic output is localized to the current touch.9. A method of operating a touch-sensitive display positioned below aninput surface, the method comprising: displaying a virtual keyboard onthe touch-sensitive display; receiving a series of individual touchinputs occurring within a region of a virtual key of the virtualkeyboard, the series of individual touch inputs including a currenttouch input and multiple previous touch inputs, the multiple previoustouch inputs each associated with an actuation of the virtual key causedby placement of a user's body part within the region of the virtual key;determining a relative positional drift of the current touch inputrelative to the multiple previous touch inputs using the series ofindividual touch inputs; and in response to the relative positionaldrift exceeding a threshold, providing a haptic output at leastpartially localized to the region of the virtual key.
 10. The method ofclaim 9, wherein the haptic output is localized to a boundary of thevirtual key.
 11. The method of claim 9, wherein the haptic output islocalized to a touch input of the series of individual touch inputs. 12.The method of claim 9, wherein the haptic output comprises decreasingfriction between the input surface and an object in contact with theinput surface.
 13. The method of claim 9, further comprising providingan acoustic output simultaneously with the haptic output.
 14. The methodof claim 9, further comprising providing a visual output on thetouch-sensitive display simultaneously with the haptic output.
 15. Amethod of operating a touch-sensitive display positioned below an inputsurface, the method comprising: receiving a set of touch inputsoccurring within a region of a virtual key of a virtual keyboardpresented by the touch-sensitive display, the set of touch inputsincluding a current touch input and multiple previous touch inputs, themultiple previous touch inputs each associated with an actuation of thevirtual key caused by placement of a user's body part within the regionof the virtual key; estimating a relative positional drift of thecurrent touch input relative to the multiple previous touch inputs usingthe set of touch inputs; and in response to the relative positionaldrift exceeding a threshold, actuating a haptic element to produce: afirst haptic output, localized to the virtual key, upon determining thatthe current touch input is located in a central region of the virtualkey; and a second haptic output, localized to a boundary of the virtualkey, upon determining that the current touch input is located outsidethe central region of the virtual key.
 16. The method of claim 15,wherein the first haptic output is different from the second hapticoutput.
 17. The method of claim 16, wherein: the first haptic outputcorresponds to a first vibration of the input surface at a firstfrequency; and the second haptic output corresponds to a secondvibration of the input surface at a second frequency.
 18. The method ofclaim 17, wherein the first frequency is related to a distance betweenthe current touch input and the central region of the virtual key. 19.The method of claim 17, wherein an amplitude of the first vibration isrelated to a distance between the set of touch inputs and the centralregion of the virtual key.
 20. The method of claim 15, furthercomprising: providing a first acoustic output with the first hapticoutput; and providing a second acoustic output with the second hapticoutput.